package com.example.final_project.mapper;

import com.example.final_project.entity.Book;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;

@Mapper
public interface BookMapper {
    // 新增教材
    int insert(Book book);
    
    // 更新教材
    int update(Book book);
    
    // 删除教材
    int deleteById(Long id);
    
    // 根据ID查询教材
    Book selectById(Long id);
    
    // 查询教材列表
    List<Book> selectList(@Param("name") String name, 
                         @Param("isbn") String isbn,
                         @Param("author") String author,
                         @Param("publisherId") Long publisherId);

    int countAllBooks();

    List<Book> selectLatestBooks(int limit);

    List<Book> getLatestBooks(@Param("limit") int limit);
} 